1. Field of the Invention
The present invention relates to an image data processing method and apparatus, a storage medium product, and a program product.
2. Description of the Related Art
Recently, with an improvement of performance and more widespread use of input devices such as digital still cameras, digitization of photographic images has become easier and opportunities of handling photograph-like images as digital data on, particularly, personal computers have increased. In addition, it has also become possible to process and edit photograph-like images on personal computers using various kinds of application software.
On the other hand, the full-color hard copy technology has also rapidly developed. Particularly, in the ink jet printing technology, print quality has improved to a level comparable to that of silver-salt photographs with development of a technique for reducing a particulate texture attributable to ink dots. Then, the ink jet printing technology has received greater popularity because it has not only improved image quality, but also is a comparatively simple printing method.
Image data taken in by input devices such as digital still cameras is recorded in predetermined storage means in various signal forms and formats.
In the case of digital still cameras, the JPEG format is used for recording most images and images are stored in the form of luminance/color-difference data (YCbCr data).
While the data form widely used in general is RGB data, the relationship expressed by the following formulae in conformity with ITU-R BT.601 exists between RGB data and YCbCr data:Y=0.299×R+0.587×G+0.114×B Cb=(−0.299×R−0.587×G+0.886×B)×0.564+k Cr=(0.701×R−0.587×G−0.114×B)×0.713+k   (Formulae 1-1)R=Y+((Cr−k)×1.4020)G=Y−((Cb−k)×0.3441)−((Cr−k)×0.7139)B=Y+((Cb−k)×1.7718)  (Formulae 1-2)wherein each of Cb and Cr takes a positive and negative value, each of R, G and B takes a value ranging from 0 to 255 when data is handled as an 8-bit value, and k is a value of 128.
Further, when YCbCr data is converted to RGB data, a converted data may take a value other than 0 to 255, and therefore a saturation process is executed such that values less than 0 are clipped to 0 and values larger than 255 are clipped to 255.
In general, RGB data is processed in 8 bits for each color. Accordingly, when image data is displayed on a display device such as a CRT monitor, colors represented by data having values of 0 to 255 for each of RGB can be only reproduced.
As a color space used for color matching, there is an sRGB color space (EEC 61966-2-1, ITU-R BT.709), which is specified in consideration of characteristics of a CRT monitor.
Then, it is a recent trend to handle values of 0 to 255 for each of RGB as sRGB color-space data because the sRGB color space has become a standard color space for universal operating systems used in personal computers for the purpose of color standardization among devices.
However, an actual scene has of course a larger color reproduction area than a display device, such as a CRT monitor, and in some regions of the color space a color reproduction area reproduced by a printer device is larger than that reproduced by a display device, such as a CRT monitor.
FIG. 9 is an xy chromaticity diagram showing color reproduction areas. In FIG. 9, numeral 901 denotes the sRGB color space, and 902 denotes arbitrary color points that can be reproduced by a printer.
The sRGB color space employed as a standard color space in many cases does not always completely involve the color reproduction areas of input and output devices. In other words, as seen from FIG. 9, a part of the color area reproducible by the printer is lost when an image is processed as sRGB color-space data.
In digital still cameras, therefore, a color signal obtained by a sensor is subjected to a predetermined process for mapping to the sRGB color space and then conversion to YCrCb data. In some cases, however, values of sRGB data are equivalently extended to a negative value less than 0 or a value larger than 255 for improving color reproducibility of display devices other than ones using the sRGB color space. A maximum color area in those cases is given as a color area defined by limitations (0≦Y≦255 and −128≦CbCr≦127) imposed on 8-bit YCbCr signals, and the color reproduction area is sometimes extended to a full limit of the maximum color area.
As described above, when image data is converted to the sRGB color space, some colors reproducible by a printer are lost. In such a case, when image data input from an input device is output to a display device, such as a CRT monitor, after conversion to sRGB, the image data is reproduced as a satisfactory image free from defects when viewed on a monitor screen. However, when the image data converted to sRGB and displayed on the CRT monitor or the like is printed out by a printer, proper colors are not reproduced because information regarding colors contained in an original image (image data input from the input device) is partly lost in the process of displaying the image on the CRT monitor (i.e., upon conversion to sRGB).
On the other hand, when image data input from an input device is printed out after being converted to the extended color space 903, shown in FIG. 9, so as to fully involve the color reproduction area of a printer, printing can be performed using information contained in an original image. However, the image data converted to the extended color space cannot be properly displayed when output to a display device, such as a CRT monitor, because the extended color space is not a color space in consideration of characteristics of the CRT monitor.